////////////////////////////////////////////////////////////////////////////
// Name: protocol.cpp
// Author: B. Gian James <gian@BattleDroids.net>
// Description: Protocol definitions
//
// $Id$
////////////////////////////////////////////////////////////////////////////
#include "common.h"
#include "protocol.h"
#include <string.h>

/////////////////////////////////////////////////////[ class PPkt
PPkt::PPkt(const PPkt & p)
{
	cmd 	= p.cmd;
	sz 		= p.sz;
	chksum	= p.chksum;
	data 	= new uchar[sz];
	memcpy(data,p.data,sz);
}

/////////////////////////////////////////////////////[ class Protocol
PPkt
Protocol::CreatePkt(const uint8 c, uint8 sz, const uchar * d)
{
	PPkt	pkt;
	pkt.cmd		= c;
	pkt.sz		= sz;
	pkt.data	= new uchar[sz];
	memcpy(pkt.data,d,sz);
	pkt.chksum	= (c + sz);
	
	return pkt;
}